package com.ethink.warehouse.api.enums;

import com.ethink.framework.common.constant.ColumnEnum;


/**
 * 仓库分仓 枚举 仓库性质:1-境外中转仓(t1)|2-国内保税仓(t2)|3-平台寄售仓(t3)|4-境外虚拟仓(t4)|5-平台保税仓(t5)|6-跨境办公室仓(t6)
 *
 * @author default
 * @date 2022-11-01
 */
public enum SubWarehouseSubWarehouseTypeEnum implements ColumnEnum {

    /** 境外中转仓 */
    T1(1, "境外中转仓"),

    /** 国内保税仓 */
    T2(2, "国内保税仓"),

    /** 平台寄售仓 */
    T3(3, "平台寄售仓"),

    /** 境外虚拟仓 */
    T4(4, "境外虚拟仓"),

    /** 平台保税仓 */
    T5(5, "平台保税仓"),

    /** 跨境办公室仓 */
    T6(6, "跨境办公室仓"),

    ;

    /**
     * 枚举int值
     */
    private Integer intValue;

    /**
     * 枚举名称
     */
    private String name;

    /**
     * 构造方法
     *
     * @param intValue
     * @param name
     */
    SubWarehouseSubWarehouseTypeEnum(Integer intValue, String name) {
        this.intValue = intValue;
        this.name = name;
    }

    /**
     * 枚举int值
     *
     * @return
     */
    @Override
    public Integer getIntValue() {
        return intValue;
    }

    /**
     * 枚举名称
     *
     * @return
     */
    @Override
    public String getName() {
        return name;
    }

    /**
     * 枚举int值获取枚举
     * @param intValue
     * @return
     */
    public static SubWarehouseSubWarehouseTypeEnum valueOf(Integer intValue) {
        for (SubWarehouseSubWarehouseTypeEnum value : SubWarehouseSubWarehouseTypeEnum.values()) {
            if(value.getIntValue().equals(intValue)) {
                return value;
            }
        }
        return null;
    }
}
